DP-CORE: A Design Pattern Detection Tool for Code Reuse
نویسندگان
چکیده
In order to maintain, extend or reuse software projects one has to primarily understand what a system does and how well it does it. And, while in some cases information on system functionality exists, information covering the non-functional aspects is usually unavailable. Thus, one has to infer such knowledge by extracting design patterns directly from the source code. Several tools have been developed to identify design patterns, however most of them are limited to compilable and in most cases executable code, they rely on complex representations, and do not offer the developer any control over the detected patterns. In this paper we present DP-CORE, a design pattern detection tool that defines a highly descriptive representation to detect known and define custom patterns. DP-CORE is flexible, identifying exact and approximate pattern versions even in non-compilable code. Our analysis indicates that DP-CORE provides an efficient alternative to existing design pattern detection tools.
منابع مشابه
5 Hxvh Zlwk ' Hvljq 3 Dwwhuqv 7
Two possible approaches to reuse with design patterns (DPs) are described: pattern-based design and pattern-related code composition. For pattern-based design, a new representation of DPs similar to class diagrams as well as different modes for creating an instance of DP are proposed. Design patterns (DPs) [2] capture and communicate approved design solutions. DPs identify participants, their r...
متن کاملA Code Generator Tool for the Gamma Design Patterns
Software reuse has been recognised as an attractive idea with an obvious payoff to achieve software that is faster, better and cheaper. One important component to be highlighted in designing reusable object-oriented software is design patterns. Design patterns describe a commonly recurring structure of communicating components that solve a general design problem in a particular context. An impo...
متن کاملParameterized Reusable Component Library Methodology
In this paper, we describe the Parameterized Reusable Component Library (PRCLIB) methodology, which supports design reuse automation. Unlike the Y-chart approach [2] which helps design space exploration at higher levels of abstraction, PRCLIB methodology addresses the issue of design space exploration at RTL levels. Although the methodology is developed keeping in mind Data Driven Media Process...
متن کاملDwarf Frankenstein is still in your memory: tiny code reuse attacks
Code reuse attacks such as return oriented programming and jump oriented programming are the most popular exploitation methods among attackers. A large number of practical and non-practical defenses are proposed that differ in their overhead, the source code requirement, detection rate and implementation dependencies. However, a usual aspect among these methods is consideration of the common be...
متن کاملDynamic Analysis and Design Pattern Detection in Java Programs
Identifying design patterns within an existing software system can support understandability and reuse of the system’s core functionality. In this context, incorporating behavioral features into the design pattern recovery would enhance the scalability of the process. The main advantage of the new approach in this paper over the existing approaches is incorporating dynamic analysis and feature ...
متن کامل